import Vue from 'vue'
import VueRouter from 'vue-router'
import MyLogin from '../components/MyLogin.vue'
import Home from '../components/Home.vue'
import Welcome from '../components/Welcome.vue'
import Users from '../components/user/Users.vue'
import Roles from '../components/user/Roles.vue'
import Rights from '../components/user/Rights.vue'
import Reports from '../components/user/Reports.vue'
import Params from '../components/user/Params.vue'
import Orders from '../components/user/Orders.vue'
import Goods from '../components/user/Goods.vue'
import Categories from '../components/user/Categories.vue'




Vue.use(VueRouter)


const router = new VueRouter({

  routes: [
    //重定向
    {
      //path：表示访问路径，当用户访问/MyLogin这个路径的时候我们就可以通过component属性展示要显示的组件
      path: '/',
      redirect: '/MyLogin',

    },

    {
      //path：表示访问路径，当用户访问/MyLogin这个路径的时候我们就可以通过component属性展示要显示的组件
      path: '/MyLogin',
      name: 'MyLogin',
      component: MyLogin,

    },
    {
      //path：表示访问路径，当用户访问/MyLogin这个路径的时候我们就可以通过component属性展示要显示的组件
      path: '/home',
      component: Home,
      redirect:'/users',
      children: [

        // {
        //   //进入到home页面时自动从定向到welcome 
        //   path: '/welcome',
        //   component: Welcome

        // },

        {
          //进入到home页面时自动从定向到welcome 
          path: '/users',
          component: Users

        },
        {
          //进入到home页面时自动从定向到welcome 
          path: '/roles',
          component: Roles

        },
        {
          //进入到home页面时自动从定向到welcome 
          path: '/rights',
          component: Rights

        },
        {
          //进入到home页面时自动从定向到welcome 
          path: '/reports',
          component: Reports

        },
        {
          //进入到home页面时自动从定向到welcome 
          path: '/params',
          component: Params

        },
        {
          //进入到home页面时自动从定向到welcome 
          path: '/orders',
          component: Orders

        },

        {
          //进入到home页面时自动从定向到welcome 
          path: '/goods',
          component: Goods

        },

        {
          //进入到home页面时自动从定向到welcome 
          path: '/Categories',
          component: Categories

        }



      ]

    }


  ]

})


//路由导航守卫控制访问权限
//如果用户没有登录，但是直接通过URL访问特定页面，需要重新导航到登录页面
//路由跳转之前 to代表即将访问的页面路径，from代表从那个页面路径跳转来的，next代表一个放行的函数（允许你访问这个页面）
//next() 放行  next('/')强制跳转的路径
router.beforeEach((to, from, next) => {

  //如果你访问的十登录页面直接放行
  if (to.path === '/MyLogin') return next();

  //获取token
  const tokenStr = window.sessionStorage.getItem("token")
  if (!tokenStr) return next('/MyLogin')
  next()

})


export default router


